/*
 * Copyright (C) 2019-2020 Alibaba Group Holding Limited
 */

/**
  ******************************************************************************
  * @file    ch2601_hello
  * @version V1.0
  * @date    2022-04-04
  * @author  码农爱学习(xxpcb)
  * @brief   RVB2601移植U8g2库测试 & DHT11温湿度读取测试
  * @attention 本例程基于平头哥RVB2601的ch2601_helloworld例程进行修改
  * 实验平台:平头哥RVB2601
  * 个人博客:https://xxpcb.gitee.io
  ******************************************************************************
  */

#include <stdlib.h>
#include <string.h>
#include <aos/aos.h>
#include "aos/cli.h"
#include "main.h"
#include "app_init.h"
#include "oled.h"
#include "dht11.h"

#define TAG "app"


int main(void)
{
    board_yoc_init();
    LOGD(TAG, "%s\n", aos_get_app_version());
    //oled_init();
	
	u8g2_t u8g2;
	u8g2Init(&u8g2);

#if 1 //<------------------测试U8g2显示
    while (1) 
	{
        //LOGD(TAG, "Hello world! YoC");
		
		u8g2_FirstPage(&u8g2);
		do
		{
			draw(&u8g2);
			
			u8g2DrawTest(&u8g2);
			
		} while (u8g2_NextPage(&u8g2));
		
        //aos_msleep(1000);
    }
#else //<------------------测试DTH11温湿度显示
	u8g2_SetFontMode(&u8g2, 1);
	u8g2_SetFont(&u8g2, u8g2_font_unifont_t_symbols);
	
	DHT11Init();
	float Temp = 0;
	float Humi = 0;
	char strTemp[32];
	char strHumi[32];
	
	while(1)
	{
		u8g2_FirstPage(&u8g2);
		do
		{
			DHT11ReadData(&Humi, &Temp);
			sprintf(strTemp, "Temp: %.1f C", Temp);
			sprintf(strHumi, "Humi: %.1f %%", Humi);
			
			u8g2_ClearBuffer(&u8g2);
			u8g2_DrawStr(&u8g2, 0, 30, strTemp);
			u8g2_DrawCircle(&u8g2, 84, 22, 2, U8G2_DRAW_ALL);
		    u8g2_DrawStr(&u8g2, 0, 60, strHumi);
			u8g2_SendBuffer(&u8g2);			
			delay_ms(3000);
		} while (u8g2_NextPage(&u8g2));
    }
#endif	

    return 0;
}

